Location based information service application

ABSTRACT

A method and system for providing audio information on geographical elements at a geo-location by receiving, at a server, geo-location coordinates of a mobile device; selecting audio files comprising information on the geographical elements located within a predetermined radius of the geo-location; sending the audio files to the mobile device; storing the audio files in a memory on the mobile device; and playing the audio files on the mobile device. The method and system may also periodically receive the geo-location coordinates of the mobile device and compare the received geo-location coordinates to previously received geo-location coordinates to determine if the device has moved to a different geo-location.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims priority to U.S. Provisional Application No. 62/155,817, filed May 1, 2015, which is hereby incorporated by reference herein in its entirety.

FIELD OF THE INVENTION

The present disclosure relates to information services applications and specifically location based information services application.

BRIEF SUMMARY

In accordance with one aspect of the invention, there is provided a method of providing audio information on geographical elements at a geo-location. The method comprises receiving, at a server, geo-location coordinates of a mobile device; selecting audio files comprising information on the geographical elements located within a predetermined radius of the geo-location; sending the audio files to the mobile device; storing the audio files in a memory on the mobile device; and playing the audio files on the mobile device.

The method may also include periodically receiving the geo-location coordinates of the mobile device and comparing the received geo-location coordinates to previously received geo-location coordinates to determine if the device has moved to a different geo-location. The method may also select and send additional audio files to the mobile device, in response to determining that the device has moved to a different geo-location, the additional audio files comprising information on geographical elements located within a predetermined radius of the different geo-location. Alternatively, the periodically receiving of the geo-location coordinates may be determined by a timer that is set by user of the mobile device, or is a poll timer set at a server. A server may send augmented audio files to the mobile device, with the augmented audio files comprising location information relating to geographical elements determined to be in direction of travel based on the comparison of geo-location coordinates.

The method may also include a user of the mobile device generating a stimulus that causes the geo-location coordinates of the mobile device to be received by the server. The stimulus may comprise a click of a button, a touch on the screen, a gesture with the device or a voice command.

In one implementation, the predetermined radius is set by a user of the mobile device. The user of the mobile device may determine size, content and language of the audio files, and the content of the audio files may be provided by city councils, tourism departments, educational departments or advertising groups, or is crowd-sourced.

In another implementation, the method includes removing the audio files from the memory of the mobile device, e.g. as by a second timer, or displaying a map of the surroundings on the mobile device, wherein location of the geographical elements are identified on the map.

In accordance with another aspect of the invention, there is provided a system for providing audio information on geographical elements at a geo-location. The system comprises a server having one or more processors, and one or more non-transitory computer-readable media having stored thereon computer-executable instructions that, when executed by the one or more processors, cause the system to receive geo-location coordinates of a mobile device, select audio files comprising information on the geographical elements located within a predetermined radius of the geo-location, send the audio files to the mobile device, store the audio files in a memory on the mobile device, and play the audio files on the mobile device. The server may periodically receive the geo-location coordinates of the mobile device and compare them to previously received geo-location coordinates to determine if the device has moved to a different geo-location.

The server may also select and send additional audio files to the mobile device, in response to determining that the device has moved to a different geo-location, the additional audio files comprising information on geographical elements located within a predetermined radius of the different geo-location. The server may periodically receive the geo-location coordinates of the mobile device at time intervals determined by a timer, which may be selected from a poll timer on the server or a timer on the mobile device; or remove the audio files from the memory of the mobile device. The removing of audio files from the memory of the mobile device is determined by a second timer.

A further aspect of the invention provides a device comprising an interface for communicating with

a non-transitory computer-readable storage medium including a set of instructions that, when executed by at least one processor, cause the at least one processor to perform steps comprising receiving, at a server, geo-location coordinates of a mobile device; selecting audio files comprising information on the geographical elements located within a predetermined radius of the geo-location; sending the audio files to the mobile device; storing the audio files in a memory on the mobile device; and playing the audio files on the mobile device.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other advantages of the disclosure will become apparent upon reading the following detailed description and upon reference to the drawings.

FIG. 1 is a network diagram of a location-based information service application.

FIG. 2 shows an example architecture of a location-based information service application.

FIG. 3 is a flow chart of an example embodiment for the location based information service application that pushes geo-location to a server.

FIG. 4 is a flow chart of an example embodiment for the location based information service application that is polled by a server for its geo-location.

FIG. 5 is a flow chart of an example embodiment for the location based information service application that sends its geo-location to a server based on a stimulus provided by the user.

While the present disclosure is susceptible to various modifications and alternative forms, specific embodiments or implementations have been shown by way of example in the drawings and will be described in detail herein. It should be understood, however, that the disclosure is not intended to be limited to the particular forms disclosed. Rather, the disclosure is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of an invention as defined by the appended claims.

DETAILED DESCRIPTION

Mobile devices, such as smart phones, tablets or any handheld GPS device with network connectivity (e.g., internet connectivity), are now equipped with location detection (herein generically referred to as a “mobile device”). This capability enables applications that offer information based on the location.

Referring to FIG. 1, one or more user 100 uses a mobile device 102 to communicate with one or more servers 104 over a network 106 (e.g., the Internet). A satellite 110 signal 112 provides geo-location coordinates to the mobile device. The user may be moving at various speeds depending if the user is walking, driving, riding a bus etc.

The server(s) maintain information pertaining to geographical elements with fixed GPS coordinates. The information can include explanations for the origin of the geographical elements such as, for example, street names, park names, historical building, surrounding communities and related cultural information. The information can be designed for educational, informational, touristic or advertising purpose.

The information is grouped into categories. The grouping can be hierarchical. Generically, any geographical element with fixed GPS coordinate can be categories and an explanation can be coupled with it. The information related to a geographical element is typically stored in one or more audio file, recorded in one or more language. For one geographical element, the system may store audio file of different size (e.g. comprising more or less details). The user can change the settings of the application to select the categories of interest, the language, the size of the audio information to play.

The user can also select the dimension of the radius within which it would like to receive information. For example, the user can set to receive audio information for all geographical elements within 100 meters of the user location.

The radius can optionally be set based on the speed of motion, such that if the user is moving in a car, the radius is larger than if the user is walking.

The application on the device may optionally display a map of the surroundings as well known in the art. The map may identify (using for example a red dot icon), geographical elements for which the system can provide information. Optionally, the icon displayed on the map may be modified with the information is played on the device (e.g., the red dot turns into a green dot).

For example, a user may select to hear “short” explanations about “street names” within 200 meters radius, in French. As the user changes location the application plays back information on the surrounding street names that are programmed in the server.

With reference to FIG. 2, the mobile device 100 generally comprises one or more processor 202 that executes software such as a location-based information application. The processor is coupled with a GPS module 206 to receive the satellite 110 signal 112, a stimulus module 208 to detect a stimulus provided by the user (e.g., click, touch, shake, sound), a speaker 212 to output audio, a memory 204 to store data and temporarily store audio files and a communication module 214 used to interface with a network 106 such as the Internet. The communication module may use WIFI or any known wireless communication technologies.

The application server 104 comprises one or more processors 250 coupled with one or more memories to store the user settings 252 for the application (e.g., radius, language etc.) and a database 254 maintaining one or more audio files for geographical elements along with their geo-location. An Application Programming Interface (API) and/or a management module 256 can be used to configure the database 254.

Referring to FIG. 3, in one embodiment, the mobile device executes an application, which periodically sends its geo-location coordinates 302 to a server 104.

The server receives the geo-location coordinates 352 and searches the database for geographical elements in the set categories that are within the set radius 354. If nothing is found, the server notifies the application 354. The application sets a timer 304 and saves the location into a previous location variable. When the timer expires 306, the current geographical location is compared with the previous location. If the difference is greater than a pre-determined threshold (e.g., the user location is substantially different than the previous location), the application sends the coordinates to the server 302. Otherwise the timer is set again 304 and the current location is set to previous location.

If there are geographical elements in the set categories that are within the set radius, one or more audio files corresponding to the elements are downloaded to the mobile device 358. The audio files are of the size set by the user. When the audio files are received by the application 322, they are saved on the device and played back to the user via the mobile device speaker 324. After a predetermined time, the audio files are removed from the mobile device 326.

The timer may be set by the user in the user settings and may optionally vary based on the speed of motion, such that if the user is moving in a car, the radius is larger than if the user is walking. The predetermined time until which the audio files are removed from the mobile device may also be a user setting.

Referring to FIG. 4, in another embodiment, the mobile device executes an application 100, which is enabled to receive requests 412 by a server 104 to send its geo-location coordinates 404.

The server 104 periodically polls each mobile device running the application for the geo-location coordinates 412. Upon receiving the current location for one user 452, the server compares the current location of the user with the previous location received for that user 454. If the difference is lower than a pre-determined threshold (e.g., the user location is not substantially different than the previous location), then the application is notified that nothing needs to be played 456 and a timer is set 414. If the location has changed substantially 454, the server searches the database for geographical elements in the set categories that are within the set radius 354. If nothing is found, the server notifies the application 354 and a timer is set 414.

If there are geographical elements in the set categories that are within the set radius, one or more audio files corresponding to the elements are downloaded to the mobile device 358. The audio files are of the size set by the user. When the audio files are received by the application 322, they are saved on the device and played back to the user via the mobile device speaker 324. After a predetermined time, the audio files are removed from the mobile device 326. The poll timer is set at the server 414 before polling the device again for the current geo-location.

When the poll timer expires 416, the server polls for the current geo-location of the mobile device 412.

In this embodiment, the poll timer may be set by the user in the user settings and may optionally vary based on the speed of motion, such that if the user is moving in a car, the radius is larger than if the user is walking. The predetermined time until which the audio files are removed from the mobile device may also be a user setting.

Referring to FIG. 5, in another embodiment, the mobile device executes an application 100, which send its geo-location coordinates 504 to the application server 104 upon a stimulus 502 generated by the user on the device. The stimulus can be, for example, a click of a button, a touch on the screen, a gesture with the device, a voice command.

The server 104 receives the geo-location coordinates 352 and searches the database for geographical elements in the set categories that are within the set radius 354. If nothing is found, the server notifies the application 354.

If there are geographical elements in the set categories that are within the set radius, one or more audio files corresponding to the elements are downloaded to the mobile device 358. The audio files are of the size set by the user. When the audio files are received by the application 322, they are saved on the device and played back to the user via the mobile device microphone 324. After a predetermined time, the audio files are removed from the mobile device 326.

As another embodiment, the server can correlate the sequence of GPS-locations sent by one application to determine in which direction the user is moving. In this case, the audio can be augmented by adding information that the geographical element being explained is located to the right or left of the user.

In another embodiment, the poll timer may be replaced or combined with a measure of change in geo-location. For example, in the embodiment shown in FIG. 4, the application monitors its change in geo-location and sends new geo-location data to the server only when the change is greater than a pre-determined threshold. As another embodiment, the pre-determined threshold may vary depending on the speed of change in the geo-location.

In another embodiment, the geographical elements maintained by the server may not have fixed GPS coordinates. The coordinates of the geographical elements may be updated periodically.

The database of the geographical elements can be maintained via an application programming interface or programmed directly via a management interface. For example the cultural department of a city may maintain a server with explanations of different geographical elements. Alternatively, the city may subscribe to a service and provide update information which is then input by the service into the server.

In another embodiment, the explanations of the geographical elements are crowd-sourced (e.g., filled by the users—like Wikipedia). The crowd-sourced information is approved by a server manager.

Optionally, the geographical elements are prioritized such that if there is too much audio information to play at one location or the user is moving too fast, only the high priority geographical elements are played back. As another embodiment, the explanations are played randomly. As another embodiment, the application maintains a circular list of which geographical elements have been played back previously in that location and plays back the oldest explanation next.

As another embodiment, the application may be executed in an offline mode, wherein the user is looking at a selected map on the screen and providing stimulus to get information on a location that is not the geo-location or near the geo-location of the device. In this case, the GPS coordinate corresponding to the stimulus provided on the selected map are sent to the server 104. If there are geographical elements with information in the selected category, then the audio file(s) are sent to the device.

Optionally, a user can play back at a later time the information that was previously played, because it was missed or forgotten. A list of previously played locations is provided to the user to select the information that the user wants to play back.

Although the algorithms described above including those with reference to the foregoing flow charts have been described separately, it should be understood that any two or more of the algorithms disclosed herein can be combined in any combination. Any of the methods, algorithms, implementations, or procedures described herein can include machine-readable instructions for execution by: (a) a processor, (b) a controller, and/or (c) any other suitable processing device. Any algorithm, software, or method disclosed herein can be embodied in software stored on a non-transitory tangible medium such as, for example, a flash memory, a CD-ROM, a floppy disk, a hard drive, a digital versatile disk (DVD), or other memory devices, but persons of ordinary skill in the art will readily appreciate that the entire algorithm and/or parts thereof could alternatively be executed by a device other than a controller and/or embodied in firmware or dedicated hardware in a well known manner (e.g., it may be implemented by an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable logic device (FPLD), discrete logic, etc.). Also, some or all of the machine-readable instructions represented in any flowchart depicted herein can be implemented manually as opposed to automatically by a controller, processor, or similar computing device or machine. Further, although specific algorithms are described with reference to flowcharts depicted herein, persons of ordinary skill in the art will readily appreciate that many other methods of implementing the example machine readable instructions may alternatively be used. For example, the order of execution of the blocks may be changed, and/or some of the blocks described may be changed, eliminated, or combined.

It should be noted that the algorithms illustrated and discussed herein as having various modules which perform particular functions and interact with one another. It should be understood that these modules are merely segregated based on their function for the sake of description and represent computer hardware and/or executable software code which is stored on a computer-readable medium for execution on appropriate computing hardware. The various functions of the different modules and units can be combined or segregated as hardware and/or software stored on a non-transitory computer-readable medium as above as modules in any manner, and can be used separately or in combination.

While particular implementations and applications of the present disclosure have been illustrated and described, it is to be understood that the present disclosure is not limited to the precise construction and compositions disclosed herein and that various modifications, changes, and variations can be apparent from the foregoing descriptions without departing from the spirit and scope of an invention as defined in the appended claims. 

1-20. (canceled)
 21. A method for transmitting an information related to a geographical element to a mobile device comprising: receiving, at a server, a plurality of geo-location coordinates from the mobile device; determining one or more geographic element within a predetermined radius surrounding the geo-location coordinates; selecting one or more audio files comprising the information on the geographical element; and transmitting the selected audio files to the mobile device.
 22. The method according to claim 21, wherein said audio files meet one or more predetermined criteria.
 23. The method according to claim 21, further comprising selecting and sending additional audio files to the mobile device in response to determining that the difference between the geo-location coordinates received exceeds a threshold.
 24. The method according to claim 21, wherein said receiving a plurality of geo-location coordinates is triggered by a stimulus on the mobile device.
 25. The method according to claim 21, further comprising playing at said mobile device said one or more audio files.
 26. The method according to claim 23, further comprising receiving from the mobile device said pre-determined criteria.
 27. The method according to claim 26, wherein said one or more criteria is selected from the group of audio file size, type of content, and language of the audio files.
 28. The method according to claim 21, further comprising displaying said geographical element on a map on the mobile device.
 29. A system for transmitting an information related to a geographical element to a mobile device comprising: a server coupled to a communications network and comprising at least a microprocessor and a non-transitory computer readable medium; wherein when the microprocessor executes computer-executable instructions stored upon the non-transitory computer-readable medium, said instructions cause the system to: receive one or more geo-location coordinates of the mobile device; identify a geographic element within a pre-determined radius of the geo-location coordinates of the mobile device; select an audio file comprising information on the geographical element; and transmit the selected audio file to the mobile device.
 30. The system according to claim 29, wherein the audio file is selected based on one or more predetermined criteria.
 31. The system according to claim 29, further comprising select and send additional audio files to the mobile device in response to determining that the difference between the geo-location coordinates exceeds a threshold.
 32. The system according to claim 29, further comprising a speaker on the mobile device to play the content of the audio files.
 33. The system according to claim 29, further comprising a stimulus on the mobile device triggering a transmission of one or more geo-location coordinates to the server.
 34. The system according to claim 30, wherein said pre-determined criteria are sent to the server by the mobile device
 35. The system according to claim 34, wherein said one or more criteria is selected from the group of audio file size, type of content, and language of the audio files.
 36. The system according to claim 29, further comprising a map displayed on the mobile device where said geographical elements are displayed. 